/* 
 * File:   Dataset.h
 * Author: cjjonker
 *
 * Created on 20 december 2012, 15:29
 */

#ifndef DATASET_H
#define	DATASET_H

#include <string>
#include "Simulation.h"

template<typename Data>
class Dataset {
    
    std::string d_name;
    int d_dim;
    Simulation* d_simulation;
    
    public:
        Dataset(){}
        Dataset(Simulation *sim, std::string const &name);
        
        Data getData(float x, float y);
        
        virtual Data getData(int x) {}
        int getDim();
        
        void setSimulation(Simulation *sim);
        Simulation* getSimulation();
    private:

};

template<typename Data>
inline void Dataset<Data>::setSimulation(Simulation *sim)
{
    d_simulation = sim;
}

template<typename Data>
inline Simulation* Dataset<Data>::getSimulation()
{
    return d_simulation;
}

template<typename Data>
inline int Dataset<Data>::getDim()
{
    return d_dim;
}

#endif	/* DATASET_H */

